Skip to content

Conversation

daveinglis
Copy link
Contributor

Closes #610

{
_Domain = darwin;
Type = ProductType;
Identifier = org.swift.product-type.common.object.bundle;
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm open to a better identifier if anyone would like to suggest one....

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bundle would be good to avoid since it has a specific existing meeting. Maybe just org.swift.product-type.common.object.target?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if anything is relying on the prefix being com.apple.product-type, but I guess this is a good test to find out if that's the case.

Copy link
Contributor Author

@daveinglis daveinglis Sep 30, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe I just drop bundle? target seems a bit odd since its a product type identifier.
so some what about one of these:
org.swift.product-type.common.object or maybe org.swift.product-type.common.object.type?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

forget that last one... type is already there...

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok... going with org.swift.product-type.common.object

@daveinglis
Copy link
Contributor Author

@swift-ci test

Copy link
Collaborator

@owenv owenv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM once we figure out naming

PackageTypes = (
com.apple.package-type.mach-o-executable
);
},
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the objects have no differing properties across Windows/Darwin/Unix, should we just put one single spec in the global domain for simplicity rather than 3 separate ones?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Over the years we deduplicated the same kind of thing across macOS and iOS to avoid similar redundancies.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The windows one inherits from a different product type, so that one is somewhat unique

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, I missed that. That's a little unfortunate; I'd hoped to avoid platform-specific product type hierarchies as much as possible but we could always change this sort of thing later.

PackageTypes = (
com.apple.package-type.mach-o-executable
);
},
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, I missed that. That's a little unfortunate; I'd hoped to avoid platform-specific product type hierarchies as much as possible but we could always change this sort of thing later.

@daveinglis daveinglis force-pushed the common_object_product_type branch from 5081c07 to 10b8c19 Compare October 1, 2025 15:53
@daveinglis
Copy link
Contributor Author

@swift-ci test

@daveinglis daveinglis merged commit 143dcf4 into swiftlang:main Oct 2, 2025
48 of 49 checks passed
@daveinglis daveinglis deleted the common_object_product_type branch October 2, 2025 18:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Introduce a new product type for SwiftPM targets

4 participants